package com.eaoa.vo.pub.base;

import java.io.Serializable;


/**
 * This is an object that contains data related to the PUB_ADDRESS table.
 * Do not modify this class because it will be overwritten if the configuration file
 * related to this class is modified.
 *
 * @hibernate.class
 *  table="PUB_ADDRESS"
 */

public abstract class BasePubAddress  implements Serializable {

	public static String REF = "PubAddress";
	public static String PROP_CREATOR = "creator";
	public static String PROP_ADDRESSNO = "addressno";
	public static String PROP_COUNTRY = "country";
	public static String PROP_PROVINCE = "province";
	public static String PROP_ADNAME = "adname";
	public static String PROP_FAXES = "faxes";
	public static String PROP_CREATEDATE = "createdate";
	public static String PROP_CITY = "city";
	public static String PROP_POSTCODE = "postcode";
	public static String PROP_EMAIL = "email";
	public static String PROP_ADTYPE = "adtype";
	public static String PROP_ADCODE = "adcode";
	public static String PROP_DISTRICT = "district";
	public static String PROP_MOBILE = "mobile";
	public static String PROP_ISLOCK = "islock";
	public static String PROP_LINKMAN = "linkman";
	public static String PROP_CREATORNAME = "creatorname";
	public static String PROP_REMARK = "remark";
	public static String PROP_TEL = "tel";
	public static String PROP_ADDETAIL = "addetail";


	// constructors
	public BasePubAddress () {
		initialize();
	}

	/**
	 * Constructor for primary key
	 */
	public BasePubAddress (java.lang.Long addressno) {
		this.setAddressno(addressno);
		initialize();
	}

	protected void initialize () {}



	private int hashCode = Integer.MIN_VALUE;

	// primary key
	private java.lang.Long addressno;

	// fields
	private java.lang.String adcode;
	private java.lang.String adtype;
	private java.lang.String adname;
	private java.lang.String addetail;
	private java.lang.String country;
	private java.lang.String province;
	private java.lang.String city;
	private java.lang.String district;
	private java.lang.String postcode;
	private java.lang.String linkman;
	private java.lang.String mobile;
	private java.lang.String tel;
	private java.lang.String faxes;
	private java.lang.String email;
	private java.lang.String remark;
	private java.lang.String islock;
	private java.lang.Long creator;
	private java.lang.String creatorname;
	private java.util.Date createdate;



	/**
	 * Return the unique identifier of this class
     * @hibernate.id
     *  generator-class="increment"
     *  column="ADDRESSNO"
     */
	public java.lang.Long getAddressno () {
		return addressno;
	}

	/**
	 * Set the unique identifier of this class
	 * @param addressno the new ID
	 */
	public void setAddressno (java.lang.Long addressno) {
		this.addressno = addressno;
		this.hashCode = Integer.MIN_VALUE;
	}




	/**
	 * Return the value associated with the column: ADCODE
	 */
	public java.lang.String getAdcode () {
		return adcode;
	}

	/**
	 * Set the value related to the column: ADCODE
	 * @param adcode the ADCODE value
	 */
	public void setAdcode (java.lang.String adcode) {
		this.adcode = adcode;
	}



	/**
	 * Return the value associated with the column: ADTYPE
	 */
	public java.lang.String getAdtype () {
		return adtype;
	}

	/**
	 * Set the value related to the column: ADTYPE
	 * @param adtype the ADTYPE value
	 */
	public void setAdtype (java.lang.String adtype) {
		this.adtype = adtype;
	}



	/**
	 * Return the value associated with the column: ADNAME
	 */
	public java.lang.String getAdname () {
		return adname;
	}

	/**
	 * Set the value related to the column: ADNAME
	 * @param adname the ADNAME value
	 */
	public void setAdname (java.lang.String adname) {
		this.adname = adname;
	}



	/**
	 * Return the value associated with the column: ADDETAIL
	 */
	public java.lang.String getAddetail () {
		return addetail;
	}

	/**
	 * Set the value related to the column: ADDETAIL
	 * @param addetail the ADDETAIL value
	 */
	public void setAddetail (java.lang.String addetail) {
		this.addetail = addetail;
	}



	/**
	 * Return the value associated with the column: COUNTRY
	 */
	public java.lang.String getCountry () {
		return country;
	}

	/**
	 * Set the value related to the column: COUNTRY
	 * @param country the COUNTRY value
	 */
	public void setCountry (java.lang.String country) {
		this.country = country;
	}



	/**
	 * Return the value associated with the column: PROVINCE
	 */
	public java.lang.String getProvince () {
		return province;
	}

	/**
	 * Set the value related to the column: PROVINCE
	 * @param province the PROVINCE value
	 */
	public void setProvince (java.lang.String province) {
		this.province = province;
	}



	/**
	 * Return the value associated with the column: CITY
	 */
	public java.lang.String getCity () {
		return city;
	}

	/**
	 * Set the value related to the column: CITY
	 * @param city the CITY value
	 */
	public void setCity (java.lang.String city) {
		this.city = city;
	}



	/**
	 * Return the value associated with the column: DISTRICT
	 */
	public java.lang.String getDistrict () {
		return district;
	}

	/**
	 * Set the value related to the column: DISTRICT
	 * @param district the DISTRICT value
	 */
	public void setDistrict (java.lang.String district) {
		this.district = district;
	}



	/**
	 * Return the value associated with the column: POSTCODE
	 */
	public java.lang.String getPostcode () {
		return postcode;
	}

	/**
	 * Set the value related to the column: POSTCODE
	 * @param postcode the POSTCODE value
	 */
	public void setPostcode (java.lang.String postcode) {
		this.postcode = postcode;
	}



	/**
	 * Return the value associated with the column: LINKMAN
	 */
	public java.lang.String getLinkman () {
		return linkman;
	}

	/**
	 * Set the value related to the column: LINKMAN
	 * @param linkman the LINKMAN value
	 */
	public void setLinkman (java.lang.String linkman) {
		this.linkman = linkman;
	}



	/**
	 * Return the value associated with the column: MOBILE
	 */
	public java.lang.String getMobile () {
		return mobile;
	}

	/**
	 * Set the value related to the column: MOBILE
	 * @param mobile the MOBILE value
	 */
	public void setMobile (java.lang.String mobile) {
		this.mobile = mobile;
	}



	/**
	 * Return the value associated with the column: TEL
	 */
	public java.lang.String getTel () {
		return tel;
	}

	/**
	 * Set the value related to the column: TEL
	 * @param tel the TEL value
	 */
	public void setTel (java.lang.String tel) {
		this.tel = tel;
	}



	/**
	 * Return the value associated with the column: FAXES
	 */
	public java.lang.String getFaxes () {
		return faxes;
	}

	/**
	 * Set the value related to the column: FAXES
	 * @param faxes the FAXES value
	 */
	public void setFaxes (java.lang.String faxes) {
		this.faxes = faxes;
	}



	/**
	 * Return the value associated with the column: EMAIL
	 */
	public java.lang.String getEmail () {
		return email;
	}

	/**
	 * Set the value related to the column: EMAIL
	 * @param email the EMAIL value
	 */
	public void setEmail (java.lang.String email) {
		this.email = email;
	}



	/**
	 * Return the value associated with the column: REMARK
	 */
	public java.lang.String getRemark () {
		return remark;
	}

	/**
	 * Set the value related to the column: REMARK
	 * @param remark the REMARK value
	 */
	public void setRemark (java.lang.String remark) {
		this.remark = remark;
	}



	/**
	 * Return the value associated with the column: ISLOCK
	 */
	public java.lang.String getIslock () {
		return islock;
	}

	/**
	 * Set the value related to the column: ISLOCK
	 * @param islock the ISLOCK value
	 */
	public void setIslock (java.lang.String islock) {
		this.islock = islock;
	}



	/**
	 * Return the value associated with the column: CREATOR
	 */
	public java.lang.Long getCreator () {
		return creator;
	}

	/**
	 * Set the value related to the column: CREATOR
	 * @param creator the CREATOR value
	 */
	public void setCreator (java.lang.Long creator) {
		this.creator = creator;
	}



	/**
	 * Return the value associated with the column: CREATORNAME
	 */
	public java.lang.String getCreatorname () {
		return creatorname;
	}

	/**
	 * Set the value related to the column: CREATORNAME
	 * @param creatorname the CREATORNAME value
	 */
	public void setCreatorname (java.lang.String creatorname) {
		this.creatorname = creatorname;
	}



	/**
	 * Return the value associated with the column: CREATEDATE
	 */
	public java.util.Date getCreatedate () {
		return createdate;
	}

	/**
	 * Set the value related to the column: CREATEDATE
	 * @param createdate the CREATEDATE value
	 */
	public void setCreatedate (java.util.Date createdate) {
		this.createdate = createdate;
	}




	public boolean equals (Object obj) {
		if (null == obj) return false;
		if (!(obj instanceof com.eaoa.vo.pub.PubAddress)) return false;
		else {
			com.eaoa.vo.pub.PubAddress pubAddress = (com.eaoa.vo.pub.PubAddress) obj;
			if (null == this.getAddressno() || null == pubAddress.getAddressno()) return false;
			else return (this.getAddressno().equals(pubAddress.getAddressno()));
		}
	}

	public int hashCode () {
		if (Integer.MIN_VALUE == this.hashCode) {
			if (null == this.getAddressno()) return super.hashCode();
			else {
				String hashStr = this.getClass().getName() + ":" + this.getAddressno().hashCode();
				this.hashCode = hashStr.hashCode();
			}
		}
		return this.hashCode;
	}


	public String toString () {
		return super.toString();
	}


}